Predictive dialing by monitoring progress of agent script

ABSTRACT

A call centre includes a plurality of agent workstations, each agent workstation comprising means for entering information obtained from a telephone respondent in response to questions prompted by a script displayed on the display of the workstation, and means for producing status signals indicative of the progression of the agent through the script. A predictive dialling system receives status signals from each agent station and predicts from the status signals and statistical information regarding the number of calls previously made, how many new calls should be dialled to enable agents who have finished their previous call by the time the calls are answered to take the new calls.

This invention relates to call centre dialling management systems. Inparticular the invention relates to predictive dialling systems for usein call centres in which the call centre agents have to call, insequence, telephone numbers from a long list of telephone numbers inorder to obtain information from the telephone respondent answering eachcall. Such information may be intended to persuade the respondent topurchase services such as banking services or telephony services, or befor polling purposes for example to determine each respondent'spolitical allegiance.

Call centres use a large number of agents who each have workstationslinked by a Computer-Telephony Integration (CTI) system which integratesthe computer and telephony systems. Such CTI systems include suchfeatures as automatic call distribution for management of incomingcalls, call accounting to enable collection of call-related information,trend analysis and agent performance and predictive dialling to enablethe system to speed dial numbers in a preloaded list of telephonenumbers to enable these numbers to be called in sequence before a callcentre agent becomes free from a previous call and then to deliver callswhich have been answered to the agent as he or she becomes available totake the next call. Predictive dialling thus cuts down agent dead time,as when an agent has finished dealing with the previous outgoing call heor she is able to immediately pick up a new answered call.

Known predictive dialling systems are based on a statistical analysis ofprevious call durations in order to estimate the number of agents whoare likely to become available at any particular time. Such anarrangement suffers the disadvantage, however, that where the number ofagents who are likely to become available at that time isover-estimated, this leaves answered calls with no agent to deal withthem, the telephone respondent then being left with what appears, to thetelephone respondent, to be a nuisance call. Known predictive diallingsystems are therefore normally programmed with a parameter establishingthe maximum nuisance call rate which can be tolerated by the system.Such prior art predictive dialling systems are thus a trade-off betweenhigh call throughput rate and a minimal nuisance call rate. In the caseof quite complex conversations between each agent and a respondent,which may have different lengths dependent on the information given bythe respondent, this can be particularly difficult as the estimated calltime is only based on an average call duration.

It is an object of the present application to provide a predictivedialling system wherein the number of agents who are likely to beavailable to take further calls at a particular time and thus the numberof new telephone numbers which may be dialled can be more accuratelypredicted than has been possible previously.

According to a first aspect of the present invention there is provided apredictive dialling system for a call centre including a plurality ofagent workstations, each agent workstation comprising: means forproducing signals effective to cause a display to display a script forprompting the agent in a telephone conversation with a telephonerespondent; means for entering information obtained from the telephonerespondent in response to questions prompted by the script into theworkstation; and means for producing status signals indicative of theprogression of the agent through the script; the predictive diallingsystem comprising: means for storing statistical data regarding theconnection of previous telephone calls; means for receiving the statussignals produced by each agent station; means for predicting from thestatistical data and the status signals how many new calls should bedialled to enable agents who have finished their previous call by thetime each new call is answered by a respective telephone respondent totake all the new calls; and means for generating signals effective tocause said new calls to be dialled.

According to a second aspect of the present invention there is provideda scripting system for use in an agent workstation in a call centre, theworkstation comprising: means for receiving telephone calls; and adisplay means; the scripting system comprising: means for providingsignals effective to cause the display means to display a script forprompting an agent in a telephone call with a telephone respondent;means for recording information obtained from the telephone respondentand sending signals representative of said information to a storagemeans; means for producing status signals representative of theprogression of the agent through the script; and means for sending saidstatus signals to a predictive dialling system.

According to a third aspect of the present invention there is provided apredictive dialling method for a call centre including a plurality ofagent workstations, each agent workstation performing the steps of:producing signals effective to cause a display to display a script forprompting the agent in a telephone conversation with a telephonerespondent; entering information obtained from the telephone respondentin response to questions prompted by the script into the workstation;and producing status signals indicative of the progression of the agentthrough the script; the predictive dialling method comprising: storingstatistical data regarding the connection of previous telephone calls;receiving the status signals produced by each agent station; predictingfrom the statistical data and the status signals how many new callsshould be dialled to enable agents who have finished their previous callby the time each new call is answered by a telephone respondent to takeall the new calls; and generating signals effective to cause said newcalls to be dialled.

According to a fourth aspect of the present invention there is provideda scripting method in an agent workstation in a call centre, theworkstation comprising: means for receiving telephone calls; and adisplay means; the scripting method comprising the steps of: providingsignals effective to cause the display means to display a script forprompting an agent in a telephone call with a telephone respondent;recording information obtained from the telephone respondent and sendingsignals representative of said information to a storage means; producingstatus signals representative of the progression of the agent throughthe script; and sending said status signals to a predictive diallingsystem.

An aspect of the invention provides a computer program includingprocessor implementable instructions for performing a method accordingto the third or fourth aspects of the invention.

An embodiment of the invention will now be described, by way of exampleonly, with reference to the accompanying drawings in which:

FIG. 1 is an overview of the operation of a call centre;

FIG. 2 illustrates the functional software and hardware modules at eachagent workstation incorporated in the call centre system shown in FIG.1;

FIG. 3 illustrates the functional components of the predictive diallingsystem incorporated in the call centre system shown in FIG. 1 togetherwith the message flow between each module;

FIG. 4 illustrates the predictive engine module incorporated in thepredictive dialling system shown in FIG. 3;

FIG. 5 illustrates the functional components of the list managementmodule incorporated in the predictive dialling system of FIG. 3;

FIG. 6 illustrates the functional components of the monitor and controlmodule incorporated in the predictive dialling system of FIG. 3;

FIG. 7 illustrates the functional components of the dialling moduleincorporated in the predictive dialling system of FIG. 3; and

FIG. 8 illustrates an example of a user interface shown on the displayof the agent workstation of FIG. 2.

Overview of the Call Centre

Turning firstly to FIG. 1, this Figure illustrates an overview of theoperation of a call centre. The call centre includes a large number ofagent workstations 1-1, 1-2, 1-3, . . . , 1-n. Each workstation 1-1, . .. , 1-n has a respective agent telephone system 2-1, 2-2, . . . , 2-nlocated at it and is connected to the components of the CTI systemthrough a network 3. The network 3 is connected via voice links to acall centre switch 5, which is itself connected to each of the agenttelephone systems 2-1, 2-2, . . . , 2-n and, via voice links, to acarrier network 7. Connected to the carrier network 7 are a large numberof network respondent telephones 9-1, 9-2, . . . , 9-k which the agentsmay call using the network 7. The call centre switch 5 and the network 3are both connected to a database system 10 for storing data obtained bythe agents from respondents answering the telephones 9-1, 9-2, . . . ,9-k.

Also connected to the network 3 is a predictive dialling system 11arranged to cause the call centre switch 5 to speed dial the numbers ofa number of the respondent telephones 9-1 . . . 9-k connected to thenetwork 7 at any one time. The number of calls dialled at any time isdependent on the number of agents who it is predicted will be availableto deal with each call when it is answered by a respondent. Theprediction is performed by monitoring the progress of each agent as theywork through a scripted dialogue with each respondent as will now bedescribed.

Agent Workstation

Turning now to FIG. 2, this Figure illustrates the components of eachagent workstation 1 to the extent required to understand the invention.Each workstation comprises a personal computer 21, a display 25, akeyboard 27 and a mouse 29. The personal computer 21 includes a displaycontrol unit 33 effective to control the display 25 and a data inputunit 35 responsive to signals produced by the user using the keyboard 27and mouse 29. Each agent telephone system 2 which is located at theworkstation comprises a microphone and headset (not shown) of a typecommon in call centres.

In addition to the above conventional components, the personal computer21 also includes an agent scripting module 37 including a store 39storing a series of scripts which may be displayed on the display 25.Each script is designed to guide the conversation between the callcentre agent and the telephone respondent for a particular purpose, forexample an opinion poll of voting intentions for a forthcoming election,to enable the agent to extract specific information from the respondent.This information may be input into the data input unit 35 via thekeyboard 27 and/or mouse during the telephone conversation between theagent and the respondent as will be described in more detail hereafter.

Each script includes points within the script at which one or more“state.” flags are automatically generated to indicate the progressionof the agent through the script, these flags being stored in status flagbuffer unit 41.

In the particular embodiment to be described, there are three “state”flags, designated “green”, “amber” and “red”, in which:

-   -   a “green” flag indicates that the call is approaching        completion;    -   an “amber” flag indicates that completion is imminent; and    -   a “red” flag indicates that the call is complete, and the agent        is finishing off.

Signals including data representative of the generation of each flag ispassed through an interface 43 to the predictive dialling system 11.Further signals indicating that the agent has actually finished the calland has reached an “idle” state are also be passed to the predictivedialling system 11. Finally, signals indicating that the agent haslogged “on to” or “out from” the particular workstation 1 and thus hasbecome available or is no longer available are generated at the relevanttimes by the agent scripting module 37 and passed through the interface43 to the predictive dialling system 11.

Predictive Dialling System

Turning now to FIG. 3, this Figure is an overview of the variousfunctional modules of the predictive dialling system 11.

Status signals representative of the flag states, “idle” states and logon or log off signals from the interface 43 in the agent scriptingmodule 37 within each agent workstation 1 are received by a predictiveengine module 51, this module also being effective to send signals backto the agent scripting module 37 in each workstation 1, these signalsbeing effective to cause a new script stored in the script store 39 tostart to run at the workstation 1.

The predictive engine module 51 is also linked to a list managementmodule 53, a dialling module 55 and a monitor and control module 57. Thelist management module 53 stores the numbers to be dialled. The diallingmodule 55 is effective to send dialling requests to the call centreswitch 5 and to receive information back from the call centre switch 5as to whether each telephone 9 has been answered. The monitor andcontrol module 57 is effective to provide dialling numbers to the listmanagement module 53 and to provide control parameters to the predictiveengine module 51.

Further details of each of the modules 51, 53, 55, 57 of the predictivedialling system will now be described in more detail with reference toFIGS. 4 to 7.

Turning now to FIG. 4, in response to the status signals and log in/logout signals received from the agent workstations and the parametersreceived from the monitor and control module 57, the predictive enginemodule 51 instructs dialling module 55 to dial numbers produced fromnumbers stored in the list management module 53. Thus the predictiveengine module 51 includes respective interfaces 61, 63, 65, 67 to theagent workstations 1 connected to the LAN 3, the dialling module 55, thelist management module 53 and the monitor and control module 57. Thepredictive engine module 51 also includes an agent status table 69including data derived from the agent login and/or logout informationsignals and the flag and “idle” state signals provided from the agentworkstations 1. A statistics unit 71 is provided for maintainingstatistics over a predefined period of time, for example one hour.

The predictive engine module 51 also includes an algorithm module 73programmed with an algorithm and the current variable values for use inthe algorithm to enable the calculation of the number of respondentphones to be dialled at any particular time from the agent statusinformation stored in the agent status table 69 and the statisticalinformation provided to the predictive engine module from the monitorand control module 57 at that time. In the particular embodiment beingdescribed, the number of calls N_(dial) which the system predicts shouldbe dialled at any one time is given by the equation:

$\begin{matrix}{N_{dial} = {I + \frac{{\alpha\; I} + {\beta\; R} + {\chi\; A} + {\delta\; G}}{S_{r}\left( {\Theta + {\tan\left( \frac{\pi\; N_{r}}{2N_{t}} \right)}} \right)}}} & (1)\end{matrix}$where:

I is the number of agents in the “Idle” state;

R is the number of agents in the “Red” state;

A is the number of agents in the “Amber” state;

G is the number of agents in the “Green” state;

α, β, χ, δ are constants set to predefined values;

S_(r) is the statistical success rate, i.e. the percentage of successfulconnections out of the total of calls made over time;

Θ is an adjustment constant called the Overdial Factor;

N_(r) is the Nuisance Call rate expressed as a percentage; and

N_(t) is the Nuisance Call target rate expressed as a percentage.

It will be appreciated that equation (1) is an asymptotic function whichwill tend to a value proportional to the number of available agents asthe nuisance rate meets the nuisance call target and the agents progresstowards their “idle” state. It will also be appreciated that equation(1) is only one example of an algorithm which may be used by apredictive dialling system in accordance with the invention.

Turning now to FIG. 5, the list management module 53 contains respectiveinterfaces 81, 83 to the monitor and control module 57 and thepredictive engine module 51. The list management module 53 includes arelational database system 85 including a list of all of the numbers tobe dialled using any particular script stored in the agent workstations1, together with a cache 87 storing the dialling numbers to be includedin the next list of new numbers to be dialled.

Turning now to FIG. 6, the monitor and control module 57 is a userinterface and thus includes a display 91 together with a display controlunit 93, a keyboard 95 and mouse 97 together with a data input controlsystem 99. Interfaces 101, 103 are provided to respectively the listmanagement module 53 and the predictive engine module 51. The monitorand control module 57 also includes a store 105 for the current systemparameters 105 for use in equation (1) and a statistics store 107storing statistical information for the system.

Finally turning to FIG. 7, the fourth unit in the predictive diallingsystem 11, that is the dialling module 55 includes respective interfaces111 and 113 to the predictive engine module 51 and the call centreswitch 5, together with a buffer 115 for storing the next numbers to bedialled.

Operation of the Predictive Dialling System

An example of the use of the system described above will now be givenwith reference to FIG. 8 which is an example of a screen on the display25 of one of the agent workstations 1 when a script is running. In theparticular script, which is designed as part of an opinion poll todetermine voting intentions at an election, the agent must work througha series of screens including prompted questions to which varioustelephone respondent answers are possible. These answers are entered bythe agent at the appropriate point on the screen using the mouse 29, tobe communicated as a series of message data using extendible mark-uplanguage through the display input unit 35 through the network 3 to thecentral database 10.

In the particular embodiment being described, the scripting software isdesigned to react to the answers to the questions as entered by theagent on the screen of the display 25 so as to present automatically adifferent screen in the event that the person being called indicatesthat they are not entitled to vote, this leading to the end of thescript. Suitable scripting software is produced by Noetica Limited underthe trade mark “Synthesys”™ which is a particular scripting softwareenabling a client to produce scripts of a format suitable for anyapplication without knowing the details of the program structure. In anadaptation of such software and in accordance with the invention, thesoftware enables the production of the “green”, “amber” and “red” stateflags discussed above at appropriate points within the script.

Thus in the particular example illustrated in FIG. 8 in the first screen“interviewee” the agent would typically be prompted to ask the question:

-   -   “Are you a resident of the household?”        to ascertain whether the person who has answered the phone is        actually resident in the particular household followed by the        question:    -   “Are you entitled to vote?”

If the answer is negative, the scripting program passes to the end ofthe script. However, assuming a positive answer, the scripting systemwill pass to the next screen “background” at which point the agent wouldbe prompted to ask the question:

-   -   “How old are you?”        followed by:    -   “What is your occupation?”

On completion of the second screen, the system passes to the thirdscreen which relates to the respondent's voting at the previous electionwith the question:

-   -   “Did you vote in the last election?”,        and if the answer is positive:    -   “How did you vote in the last election?”        with the agent being given the choices of the various parties,        “Labour”, “Liberal Democrat” and “Conservative” or “Other        Parties”, “undecided” or “will not say”.

The final screen as illustrated in FIG. 8 shows the answer given inresponse to the message:

-   -   “Will you vote in the next election?”        as    -   “What is your voting intention in the next election?”

At appropriate points within the script, on passing the “green” and“amber” flag points, appropriate signals are sent to the predictiveengine module 51 in the predictive dialling system. On entering theanswer to the final question, the interface predictive dialling system43 prompts the generation of a “red” flag. Completion of the call leadsto the agent being set into an “idle” mode with the time at which thecall was completed also being logged and an appropriate message sent tothe predictive engine module 51.

The above information during the running of a script at each workstation1 is communicated to the predictive engine module where it is stored inthe agent status table 69 which will typically have entries of thefollowing form, but with substantially more entries:

TABLE 1 AGENT LOG LOG GREEN AMBER RED ID OFF IN FLAG FLAG FLAG IDLE 1 ✓19.00 2 ✓ ✓ 18.00 18.02.01 3 ✓ ✓ 10.10 18.05.00 4 ✓ ✓ 18.06 18.06.20

In the particular example shown in the Table, the first agent has loggedoff and thus the predictive engine module 51 knows that this agent isnot available. Agents 2 and 3 are at respectively the “green” flag andthe “red” flag stage while the agent 4 reached the idle stage at18.06.20. The table thus enables the predictive engine module 51 toderive values for I, R, A and G for use in equation (1).

Based on this information together with the statistical informationrelating to the statistical success rate S_(r), the constants α, β, χ,δ, the value of Θ, the calculated nuisance call rate N_(r) and thenuisance call target N_(t) which are received from the monitor andcontrol module 57, the predictive engine module 51 is able to calculatefrom the stored algorithm, equation (1), the number of calls N_(dial)which should be dialled at that time. Where an agent logs in or out, thenumber of idle agents is increased or decreased accordingly.

The newly-calculated value of N_(dial) is compared with the previouslycalculated value N_(dial) for calls which are currently in the processof being dialled. If the calculated value of N_(dial) has increased, newnumbers to be dialled are initiated and a new number request is sent tothe list management module 53 from the predictive engine module 51.However, if the value of N_(dial) has decreased, no new numbers to bedialled are initiated and if the difference between the previous andcurrent values of N_(dial) is more than a predetermined value, then someof the telephone numbers currently being dialled are cancelled byhanging up. However as the value of N_(dial) is calculated in responseto every message received by the predictive engine module 51 from theengine scripting module 37 at each agent workstation 1, or from themonitor and control module 57 as parameter updates, the value ofN_(dial) should not fluctuate greatly.

Whenever the predictive engine module 51 requires new numbers to dial, anew number request message is sent to the list management module 53including an indication of the difference between the number oftelephone numbers which are currently in the process of being dialledand the value of N_(dial). In response to this message, a new numberlist including the required number of new telephone numbers which havebeen held in the cache 87 in the list management module, is immediatelysent to the predictive engine module 51 and the telephone numbers in thecache 87 are replaced by further telephone numbers from the diallinglist stored in the relational database system 85 to avoid delays beinggenerated whilst this data is read out from the database system 85.

The predictive engine module 51 stores the new numbers in a new numberlist buffer 75 whilst sending a dialling request message through thedialling module 55, where the new numbers are held in a dialling buffer115 before being passed via interface 113 to the call centre switch 5.The dialling module 55 receives dialling result information back fromthe call centre switch 5 as to whether each dialling request wassuccessful and that the call is now connected, or if the diallingrequest for any telephone number failed. If the dialling request for anytelephone number does fail, a message indicating the reason for thefailure such as “busy”, “no answer”, “phone switched to answerphone” issent by the call centre switch 5 through the dialling module 55 to thepredictive engine module 51, this information being recorded in thestatistics store 71 in the predictive engine module 51. If, however, thedialling request is successful and the call centre switch has allocatedthe call to one of the agent telephone systems 2-1, 2-2, 2-n, thepredictive engine module 51 sends a new script message to theappropriate agent workstation 1-1, 1-2, . . . , 1-n.

Statistical information from the predictive engine module 51 is passedto the monitor and control module 57 for storage and analysis in thestatistics module 107 in the monitor and control module. A systemmanager is able to cause this information to be displayed on the display91, to enable the system manager to decide whether to amend the systemparameters and the system parameter store 105 to change the values usedby the algorithm in the algorithm unit 73 in view of the performance ofthe system. The dialling result information may be used to modify, forexample, the times at which the calls are made. Alternatively, thesemodifications may be done automatically by means of the feedback ofperformance statistics to the monitor and control module 57.

It will be appreciated that any form of scripting software may be used.However a particularly advantageous form of scripting is an adaptationof that provided by Noetica Ltd as described above.

It will be appreciated that the invention may be implemented by softwarerunning in both the predictive dialling system and software running ineach agent workstation. Such software may be carried on a computercarrier or be downloaded as a signal from a network or from theInternet.

It will be appreciated that whilst one particular form of call centrehas been described in which each call centre agent has an independentworkstation and telephone system, the invention is applicable to otherforms of call centre, for example where each workstation 1 is integratedwith a telephone system 2, with the voice and data networks also beingintegrated.

1. A predictive dialing system for a call center including a pluralityof agent workstations, each agent workstation comprising: a displayprompting system for producing signals effective to cause a display todisplay a script for prompting the agent in a telephone conversationwith a telephone respondent; an entering system for entering informationobtained from the telephone respondent in response to questions promptedby the script into the workstation; and a status signal productionsystem for producing a series of status signals indicative of theprogression of the agent through the script; the predictive dialingsystem comprising: a storage system for storing statistical dataregarding the connection of previous telephone calls; a reception systemfor progressively receiving the series of status signals produced byeach agent station; a prediction system for predicting from thestatistical data and those of the series of status signals received atany time how many new calls should be dialed to enable agents, who havefinished their previous call by the time each new call is answered by arespective telephone respondent, to take all the new calls; and ageneration system, for generating signals effective to cause said newcalls to be dialed.
 2. A predictive dialing system according to claim 1including a database system for storing telephone numbers to be called,and a cache for storing a selection of the stored telephone numbers,wherein when the prediction system predicts the number of new calls tobe made, the appropriate number of telephone numbers are retrieved fromthe cache.
 3. A predictive dialing system according to claim 1 whereinthe statistical data comprises the percentage of successful telephoneconnections made out of the total number of calls over a predeterminedperiod of time.
 4. A predictive dialing system according to claim 1wherein the statistical data comprises an indication of the number ofcalls in excess of the number of available agents which the system cantolerate.
 5. A predictive dialing system according to claim 1 whereinthe statistical data includes the ratio of the nuisance call rate to thenuisance call rate target.
 6. A predictive dialing system according toclaim 1 in which said prediction system is arranged to predict thenumber, N_(dial), of calls I from the number I of available agentscurrently not engaged on a call, the number R, A, G of agents who havecurrently reached predefined points within a script, the percentageS_(r) of successful connections out of the total number of calls made ina predetermined time period, the percentage N_(r) of calls answered by arespondent but with no agent available to take the call measured over apredetermined time period, and the target percentage N_(t) of callsanswered by a respondent but with no agent available to take the call.7. A predictive dialing system according to claim 6 wherein$N_{dial} = {I + \frac{{\alpha\; I} + {\beta\; R} + {\chi\; A} + {\delta\; G}}{S_{r}\left( {\theta + {\tan\left( \frac{\pi\; N_{r}}{2N_{t}} \right)}} \right)}}$where I is the number of available agents currently not engaged on acall; R, A and G are the number of agents who have reached predeterminedpoints in their respective scripts and have sent said status signals tothe predictive dialing system; α, β, χ, δ are constants; S_(r) is thepercentage of successful connections out of the total number of callsmade measured over a predetermined time period; θ is an adjustmentconstant; N_(r) is the percentage of calls answered by a telephonerespondent but with no agent available to take the call measured over apredetermined time period; and N_(t) is the target percentage of callsanswered by a telephone respondent but with no agent available to takethe call.
 8. A predictive dialing system according to claim 1 includingan adjustment system for adjusting the parameters used by the predictionsystem.
 9. A predictive dialing system according to claim 8 including auser interface system for providing a user interface enabling display ofthe statistical performance of the system, and an enabling system forenabling a user to adjust said parameters.
 10. A predictive dialingsystem according to claim 1 in which where the number of calls which arepredicted is less than the calls which are currently being dialed, thesystem includes a cancellation system for cancelling some of the callscurrently being dialed.
 11. A predictive dialing system according toclaim 1 including a new script initiation system for sending a signal toa workstation effective to initiate the running of a new script at theworkstation when the workstation has been allocated a new answeredtelephone call.
 12. A scripting system for use in an agent workstationin a call center, the workstation comprising: a system for receivingtelephone calls; and a display; the scripting system comprising: adisplay prompting system for providing signals effective to cause thedisplay means to display a script for prompting an agent in a telephonecall with a telephone respondent; a system for recording informationobtained from the telephone respondent and sending signalsrepresentative of said information to a storage means; a status signalproduction system for producing a series of status signalsrepresentative of the progression of the agent through the script; and asystem for progressively sending said series of status signals to apredictive dialing system.
 13. A scripting system according to claim 12including a reception system for receiving signals from the predictivedialing system effective to initiate the display of a new scriptsynchronised with the receipt of a new telephone call.
 14. A predictivedialing method for a call center including a plurality of agentworkstations, each agent workstation performing the steps of: producinga signals effective to cause a display to display a script for promptingthe agent in a telephone conversation with a telephone respondent;entering information obtained from the telephone respondent in responseto questions prompted by the script into the workstation; and producinga series of status signals indicative of the progression of the agentthrough the script; the predictive dialing method comprising: storingstatistical data regarding the connection of previous telephone calls;progressively receiving the status signals produced by each agentstation; predicting from the statistical data and those of the series ofstatus signals which have been received at any time how many new callsshould be dialed to enable agents who have finished their previous callby the time each new call is answered by a telephone respondent to takeall the new calls; and generating signals effective to cause said newcalls to be dialed.
 15. A predictive dialing method according to claim14 including storing telephone numbers to be called in a databasesystem, and storing a selection of the stored telephone numbers in acache, wherein when the predicting means predicts the number of newcalls to be made, the appropriate number of telephone numbers areretrieved from the cache.
 16. A predictive dialing method according toclaim 14 wherein the statistical data comprises the percentage ofsuccessful telephone connections made out of the total number of callsover a predetermined period of time.
 17. A predictive dialing methodaccording to claim 14 wherein the statistical data comprises anindication of the number of calls in excess of the number of availableagents which the system can tolerate.
 18. A predictive dialing methodaccording to claim 14 wherein the statistical data includes the ratio ofthe nuisance call rate to the nuisance call rate target.
 19. Apredictive dialing method according to claim 14 in which where thenumber of calls which are predicted is less than the calls which arecurrently being dialed, cancelling some of the calls currently beingdialed.
 20. A predictive dialing method according to claim 14 in whichsaid predicting step predicts the number, N_(dial), of calls from thenumber of available agents currently not engaged on a call, the numberof R, A, G agents who have currently reached predefined points within ascript, the percentage S_(r) of successful connections out of the totalnumber of calls made in a predetermined time period, the percentage ofcalls answered by a respondent but with no agent available to take thecall measured over a predetermined time period, and the targetpercentage N_(t) of calls answered by a respondent with no agentavailable to take the call.
 21. A predictive dialing method according toclaim 20 wherein$N_{dial} = {I + \frac{{\alpha\; I} + {\beta\; R} + {\chi\; A} + {\delta\; G}}{S_{r}\left( {\theta + {\tan\left( \frac{\pi\; N_{r}}{2N_{t}} \right)}} \right)}}$where I is the number of available agents currently not engaged on acall; R, A and G are the number of agents who have reached predeterminedpoints in their respective scripts and have sent said status signals tothe predictive dialing system; α, β, χ, δ are constants; S_(r) is thepercentage of successful connections out of the total number of callsmade measured over a predetermined time period; θ is an adjustmentconstant; N_(r) is the percentage of calls answered by a telephonerespondent but with no agent available to take the call measured over apredetermined time period; and N_(t) is the target percentage of callsanswered by a telephone respondent but with no agent available to takethe call.
 22. A predictive dialing method according to claim 14including the step of sending a signal to a workstation effective toinitiate the running of a new script at the workstation when theworkstation has been allocated a new answered telephone call.
 23. Ascripting method in an agent workstation in a call center, theworkstation comprising: a reception system for receiving telephonecalls; and a display arrangement; the scripting method comprising thesteps of: providing signals effective to cause the display means todisplay a script for prompting an agent in a telephone call with atelephone respondent; recording information obtained from the telephonerespondent and sending signals representative of said information to astore; producing a series of status signals representative of theprogression of the agent through the script; and progressively sendingsaid status signals to a predictive dialing system.
 24. A scriptingmethod according to claim 23 including the step of receiving signalsfrom the predictive dialing system effective to initiate the display ofa new script synchronised with the receipt of a new telephone call. 25.A computer program product, tangibly embodied in a computer-readablemedium, the computer program product comprising instructions operable tocause data processing apparatus to perform a predictive dialing methodfor a call center associated with a plurality of agent workstations,wherein each agent workstation is configured to produce signalseffective to cause a display to display a script for prompting the agentin a telephone conversation with a telephone respondent, enterinformation obtained from the telephone respondent in response toquestions prompted by the script into the workstation, and produce aseries of status signals indicative of the progression of the agentthrough the script, the predictive dialing method comprising: storingstatistical data regarding the connection of previous telephone calls;progressively receiving the status signals produced by each agentstation; predicting from the statistical data and those of the series ofstatus signals which have been received at any time how many new callsshould be dialed to enable agents who have finished their previous callby the time each new call is answered by a telephone respondent to takeall the new calls; and generating signals effective to cause said newcalls to be dialed.
 26. A call center including a plurality of agentworkstations, each agent workstation comprising: a display promptingsystem for producing signals effective to cause a display to display ascript for prompting the agent in a telephone conversation with atelephone respondent; an entering system for entering informationobtained from the telephone respondent in response to questions promptedby the script into the workstation; a status signal production systemfor producing a series of status signals indicative of the progressionof the agent through the script; and a predictive dialing systemcomprising: a storage system for storing statistical data regarding theconnection of previous telephone calls; a reception system forprogressively receiving the series of status signals produced by eachagent station; a prediction system for predicting from the statisticaldata and those of the series of status signals received at any time howmany new calls should be dialed to enable agents, who have finishedtheir previous call by the time each new call is answered by arespective telephone respondent, to take all the new calls; and ageneration system, for generating signals effective to cause said newcalls to be dialed.
 27. In an agent workstation for use in a callcenter, the workstation comprising: a system for receiving telephonecalls; a display, and a scripting system comprising: a display promptingsystem for providing signals effective to cause the display means todisplay a script for prompting an agent in a telephone call with atelephone respondent; a system for recording information obtained fromthe telephone respondent and sending signals representative of saidinformation to a storage means; a status signal production system forproducing a series of status signals representative of the progressionof the agent through the script; and a system for progressively sendingsaid series of status signals to a predictive dialing system.